<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <style>
    #box {
      width: 300px;
      height: 300px;
      background: saddlebrown;
    }

    #con {
      width: 100px;
      height: 100px;
      background: darkgoldenrod;
    }

    #my {
      width: 400px;
      height: 400px;
      background: salmon;
    }

    #myzi {
      width: 100px;
      height: 100px;
      background: darkgoldenrod;
    }
  </style>
</head>

<body>
  <div id="app">
    <div id="box" @click="fu">
      <!-- 事件修饰符  -->
      <!-- .stop  阻止事件冒泡-->
      <div id="con" @click.stop="zi"></div>
    </div>
    <!-- .prevent 阻止默认事件行为 -->
    <form action="" @submit.prevent="run">
      <input type="submit">
    </form>
    <!-- .self 只有当前在自身元素点击时候出发触发事件 -->
    <div id="my" @click.self="hi">
      <div id="myzi"></div>
    </div>
    <!-- .once 事件只触发一次  -->
    <h1 @click.once="one">事件只触发一次</h1>
    <!-- 键盘修饰符 和事件对象 -->
    <div>
      <!-- vue中事件对象的传递 使用  $event -->
      <button @click="myev($event,8)">点击发生事件，获取时间对象</button>
    </div>

    <!-- 
       鼠标修饰符
      .left  左键 
      .right 右键
      .middle 滚轮点击-->
    <button @click.middle="myrun">
      你好
    </button>

    <!-- <input type="text" @input="shuru"> -->
    <!-- 
     键盘对象的修饰符 
      .enter
      .ctrl
      .shift 
      .alt 
      .space 
      .tab
      .esc 
      .delete 
      .up 
      .down
      .left
      .right
      .meta 输入返回桌面键
    -->



    <!-- 键盘按住  ctrl+shift+A -->
    <input type="text" @keydown.ctrl.shift.65="myshuru()">
  </div>
  <script src="./vue.js"></script>
  <script>
    var vm = new Vue({
      el: "#app",
      data() {
        return {

        }
      },
      methods: {
        fu() {
          alert("父")
        },
        zi() {
          alert("子")
        },
        hi() {
          alert("触发")
        },
        one() {
          alert("事件只触发一次")
        },
        myev(e, num) {
          console.log(e)
          // e.target 事件源  e.clientX e.clientY
          console.log(num)
        },
        myrun() {
          alert("鼠标触发事件")
        },
        shuru() {

        },
        myshuru() {
          alert("ctrl")
        }
      }
    })


  </script>
</body>

</html>